草庐IT

c++ - Qt QSettings 尝试创建 ini 文件但没有创建为什么?

我正在尝试创建ini文件来保存配置数据,我有单例类像这样设置QSettings对象:...#DEFINECONFIG_FILE_NAME"myconfig.ini"m_pSettings=newQSettings(QDir::currentPath()+"/"+CONFIG_FILE_NAME,QSettings::IniFormat);这符合文档,但是当我查看我的应用程序目录时,没有创建任何myconfig.ini文件,我做错了什么? 最佳答案 我相信为了强制显示QSettings文件,您至少需要在其中设置一个值,然后调用sync

c++ - Qt——QWidget到底是什么

在C++GUIProgrammingwithQt4一书中,第一章的一个例子中提到QWidget作为应用程序的主窗口.并且,在Qt引用文档中:http://doc.qt.io/qt-4.8/qwidget.html有很多关于QWidget的信息。但是,什么是基线?QWidget主要做什么?我应该什么时候考虑? 最佳答案 一种思考方式是,任何知道如何在屏幕上显示自身的对象都是QWidget(特别是QWidget的某个子类)。有一些像QPicture这样代表图像的对象,但是QPicture自身不知道如何将自己放在屏幕上。例如,您通常需要将

C++ Qt 返回空 QString

我创建了一个返回QString的函数。在我的函数中的某些点,它应该返回一个空的QString。仅仅返回""是行不通的。当我使用QString::isEmpty()不是。我的“紧急计划”是返回一个“空”字符串并检查文本是否为“空”。但我认为这不是好的风格。那么如何返回一个空的QString呢? 最佳答案 创建空QString的惯用方法是使用其默认构造函数,即QString()。QString()创建一个字符串,isEmpty()和isNull()都返回true。使用文字""创建的QString为空(isEmpty()返回true)但不

c++ - 如何从 Qt 启动外部文件?

我想打开一个pdf文件,只需双击QListWidget的一个元素即可。我创建了一个批处理文件来打开AcrobatReader(reader.bat),但我想要一个特定的pdf文件:voidMainWindow::on_FileListWidget_itemDoubleClicked(QListWidgetItem*item){QFileSelectedModel(Current_Path+"/Template/"+item->text());QStringFileName;FileName=(Current_Path+"/Template/"+item->text());::syste

c++ - 有没有办法在qt中卸载eventfilter?

我只需要一段时间的事件过滤器,以后有没有办法卸载它? 最佳答案 请阅读eventsystemworksinQthere.这对于基本理解至关重要,尤其是这一段:TheQObject::installEventFilter()functionenablesthisbysettingupaneventfilter,causinganominatedfilterobjecttoreceivetheeventsforatargetobjectinitsQObject::eventFilter()function.Aneventfilterge

c++ - Qt 应用程序 : build with different Qt versions 的 CI

我使用Travis-CI为我的简单Qt应用程序进行持续集成。我的.travis.yml文件看起来像这样(基于thisgist):language:cppbefore_install:-sudoadd-apt-repository--yesppa:ubuntu-sdk-team/ppa-sudoapt-getupdate-qq-sudoapt-getinstall-qqg++qt4-qmakelibqt4-devqt5-qmakeqtbase5-devscript:-qmake-qt=qt4-v-qmake-qt=qt4-make-make-kcheck-makeclean-qmake-

c++ - Qt 应用程序抛出 "dyld: Symbol not found: __cg_jpeg_resync_to_restart"

我在OSX上遇到了众所周知的dyld问题。Qt.pro文件:INCLUDEPATH+=/usr/local/Cellar/libpng/1.6.23/include/usr/local/Cellar/jpeg/8d/includeLIBS+=-L/usr/local/Cellar/libpng/1.6.23/lib-L/usr/local/Cellar/jpeg/8d/lib-ljpeg-lpng-ljpeg-lz在运行时我的应用程序抛出:dyld:Symbolnotfound:__cg_jpeg_resync_to_restartReferencedfrom:/System/Libr

c++ - Qt - 没有匹配函数来调用 ‘QVariant::QVariant(MyClass&)’

我在创建具有自定义类型的QVariant时遇到问题。这是一个小例子,展示了我想要实现的目标:主要.cpp:#include"MyClass.h"intmain(){MyClasssome_object;QVariantvariant(some_object);return0;}包含/MyClass.h:#pragmaonce#includeclassMyClass{public:MyClass():_my_member(0.0){}MyClass(constMyClass&other){_my_member=other._my_member;}~MyClass(){}MyClass&o

c++ - Qt:QScrollArea 中的自定义小部件

我正在尝试创建自定义小部件。我的小部件呈现自身,除非它在滚动区域内。下面的代码有效。如果我在MainWindow构造函数中将if(0)更改为if(1),它将不会呈现“HelloWorld”字符串。我假设我必须(重新)实现一些额外的方法,但到目前为止我还无法通过反复试验找到正确的方法。//hellowidget.h#ifndefHELLOWIDGET_H#defineHELLOWIDGET_H#includeclassHelloWidget:publicQWidget{Q_OBJECTpublic:HelloWidget(QWidget*parent=0);voidpaintEvent(

Qt3D类使用说明

Qt3D类说白了就是处理3D图形的类接口,对比2D图形graphicview类,3D图形也有场景,有实体类,灯光实体,摄像机实体类,材质类等处理。下面是常用的Qt3D类以及它们的使用说明:1.**Qt3DCore:**这个模块包含了一些核心类,用于管理3D场景中的实体、组件、变换等。其中最重要的类是`Qt3DCore::QEntity`,它代表了3D场景中的实体,可以包含各种组件。2.**Qt3DRender:**这个模块包含了一些用于渲染的类,比如`Qt3DRender::QCamera`代表了摄像机,`Qt3DRender::QMaterial`代表了材质,`Qt3DRender::QMe